package com.orangecy.rulesubscribe.callback;

import com.orangecy.common.result.PlainResult;
import com.orangecy.rulesubscribe.context.RuleContext;

/**
 * @Author : orangeCy.奕
 * @Product : 猎豹养成产品源码
 * @Time : 2021/10/22
 * @Desc : 对ActionCallBack的可扩展点在抽象中实现
 */
public abstract class AbstractActionCallBack<R extends PlainResult<R> ,C extends RuleContext> implements ActionCallBack<R,C>{

    @Override
    public void filterSubscribeRules(C c) {
        //如果不需要过滤 无需实现
    }

    @Override
    public void ruleProcessBefore(C c) {
        //这里可以从内存Map中获取数据 前值执行判断 待实现
    }

    @Override
    public void ruleProcessAfter(C c) {
        // 待实现
    }
}